333 research outputs found

    The Analogue Computer as a Voltage-Controlled Synthesiser

    Get PDF
    This paper re-appraises the role of analogue computers within electronic and computer music and provides some pointers to future areas of research. It begins by introducing the idea of analogue computing and placing in the context of sound and music applications. This is followed by a brief examination of the classic constituents of an analogue computer, contrasting these with the typical modular voltage-controlled synthesiser. Two examples are presented, leading to a discussion on some parallels between these two technologies. This is followed by an examination of the current state-of-the-art in analogue computation and its prospects for applications in computer and electronic music

    The Csound Plugin Opcode Framework

    Get PDF
    This article introduces the Csound Plugin Opcode Frame-work (CPOF), which aims to provide a simple lightweightC++ framework for the development of new unit genera-tors for Csound. The original interface for this type workis provided in the C language and it still provides the mostcomplete set of components to cover all possible require-ments. CPOF attempts to allow a simpler and more eco-nomical approach to creating plugin opcodes. The paperexplores the fundamental characteristics of the frameworkand how it is used in practice. The helper classes that areincluded in CPOF are presented with examples. Finally,we look at some uses in the Csound source codebase

    Faust Programs in Csound

    Get PDF
    Csound (Boulanger, 2000) is a Music-N language that was first released in 1986 as a C-port of the Music 11 language, originally developed for the DEC PDP-11 computers at MIT in the 1970s. Since its release, it has undergone a number of changes, and in 2006, a completely re-engineered system, Csound 5, was launched. This system had a number of new possibilities, as it was designed as a library that could be embedded in a variety of environments. It also included the possibility of plugin opcodes, which would extend the language without the need for the whole re-compilation of the code base. In 2013, a further review of the system was carried out, and a new major version, Csound 6 (Cabrera et al., 2013), was launched, with substantial improvements and additions. This is the current system, discussed in this article. Faust (Orlarey, 2009) is a functional language designed to translate signal processing flowcharts into C++ or Javascript source code, or into LLVM bitcode. It allows plugins to be designed and then translated to C++ code that can be compiled into dynamic libraries, which can then be loaded into Csound as new unit generators (opcodes). This is done by the Faust compiler, which can be executed from the command-line, from the IDE Faustworks or on-line, via a web-based frontend. Recently, however, a new version of the system, Faust 2, has been developed where the Faust compiler is now provided as a library (libfaust) that can be embedded into another program. Libfaust can provide the Faust functionality in a dynamic way, where Faust programs can be compiled on-the-fly into LLVM bitcode that can be executed directly. This allows the possibility of short- circuiting the development process, so that a plugin opcode is not required anymore as an in-between the original Faust program and the running Unit generator in Csound

    On the Development of C++ Instruments

    Get PDF
    This paper brings together some ideas regardingcomputer music instrument development with re-spect to the C++ language. It looks at these fromtwo perspectives, that of the development of self-contained instruments with the use of a class libraryand that of programming of plugin modules for amusic programming system. Working code exam-ples illustrate the paper throughout

    The design of a lightweight DSP programming library

    Get PDF
    This paper discusses the processes involved in designing and implementing an object-oriented library for audio signal processing in C++ (ISO/IEC C++14). The introduction presents the background and motivation for the project,which is related to providing a platform for the study and research of algorithms, with an added benefit of having an efficient and easy-to-deploy library of classes for application development. The design goals and directions are explored next, focusing on the principles of stateful representations of algorithms, abstraction/ encapsulation, code re-use and connectivity. The paper provides a general walk-through the current classes and a detailed discussion of two algorithm implementations. Completing the discussion, an example program is presented

    Binaural HRTF Based Spatialisation: New Approaches and Implementation

    Get PDF
    New approaches to Head Related Transfer Function (HRTF) based artificial spatialisation of audio are presented and discussed in this paper. A brief summary of the topic of audio spatialisation and HRTF interpolation is offered, followed by an appraisal of the existing minimum phase HRTF interpolation method. Novel alternatives are then suggested which essentially approach the problem of phase interpolation more directly. The first technique, based on magnitude interpolation and phase truncation, aims to use the empirical HRTFs without the need for complex data preparation or manipulation, while minimizing any approximations that may be introduced by data transformations. A second approach augments a functionally based phase model with low frequency non-linear frequency scaling based on the empirical HRTFs, allowing a more accurate phase representation of the more relevant lower frequency end of the spectrum. This more complex approach is deconstructed from an implementation point of view. Testing of both algorithms is then presented, which highlights their success, and favorable performance over minimum phase plus delay methods

    Theory and Practice of Modified Frequency Modulation Synthesis

    Get PDF
    The theory and applications of a variant of the well-known synthesis method of frequency modulation, modified frequency modulation (ModFM), is discussed. The technique addresses some of the shortcomings of classic FM and provides a more smoothly evolving spectrum with respect to variations in the modulation index. A complete description of the method is provided, discussing its characteristics and practical considerations of instrument design. A phase synchronous version of ModFM is presented and its applications on resonant and formant synthesis are explored. Extensions to the technique are introduced, providing means of changing spectral envelope symmetry. Finally its applications as an adaptive effect are discussed. Sound examples for the various applications of the technique are offered online

    The ModFM synthesis vocoder

    Get PDF
    Vocoders have been practical tools for synthesis and processing since the original voice encoder by Homer Dudley in the 1930s . They enable the transformation and reproduction of an input sound by the manipulation of its spectral envelope. This paper presents a new variation on the principle utilising the technique of Modified FM (ModFM) synthesis for sound generation. The general design of the vocoder is introduced, followed by a non-mathematical introduction to the ModFM synthesis algorithm. The article is completed with an outline of applications and a discussion of some basic examples of the vocoder operation
    • …
    corecore